package A一周刷爆LeetCode.A基础班.C认识NlogN的排序;

import A一周刷爆LeetCode.A基础班.A基础.Comparator;

/**
 * @author wei.zhao
 * @description: 荷兰国旗问题
 * @date 2022年01月13日 16:53
 */
public class Code05_NetherlandsFlag {

    public static void partition(int[] arr, int num) {
        int lp = 0;
        int rp = arr.length - 1;
        for (int i = 0; i <= rp; i++) {
            if (arr[i] < num) {
                swap(arr, i, lp++);
            } else if (arr[i] > num) {
                swap(arr, i--, rp--);
            }
        }
        Comparator.printArray(arr);
    }

    private static void swap(int[] arr, int i, int j) {
        int temp = arr[j];
        arr[j] = arr[i];
        arr[i] = temp;
    }

}
